Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Sibiu Challenger Nordea Open - Bastad Wimbledon - London Plava Laguna Croatia Open - Umag Mallorca Challenger U.S. Open - New York Astana Open - Astana Bratislava 2 Challenger Stockholm Open - Stockholm Erste Bank Open - Vienna Helsinki Challenger Ismaning Challenger Danderyd Challenger Canberra Challenger Australian Open - Melbourne Qatar ExxonMobil Open - Doha Manama Challenger Ottignies-Louvain-la-Neuve Challenger Dubai Duty Free Tennis Championships - Dubai BNP Paribas Open - Indian Wells Phoenix Challenger Barletta Challenger Ostrava Challenger Tunis Challenger Bucharest Open - Bucharest Wimbledon - London Split Challenger French Open - Paris Porto Alegre Challenger Internazionali BNL d'Italia - Rome Nottingham 2 Challenger Zagreb Challenger Ilkley Challenger Santo Domingo Challenger Bonn Challenger U.S. Open - New York Istanbul Challenger Manacor Challenger Japan Open Tennis Championships - Tokyo Hangzhou Open - Hangzhou Brest Challenger Shanghai Rolex Masters - Shanghai Almaty Open - Almaty Bratislava 2 Challenger Belgrade Open - Belgrade Lyon Challenger Movistar Chile Open - Santiago Bordeaux Challenger Cap Cana Challenger BNP Paribas Open - Indian Wells Rio Open - Rio de Janeiro Rosario Challenger Montemar Challenger Maia Challenger Barcelona Open Banc Sabadell - Barcelona Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Canberra Challenger Adelaide International - Adelaide Argentina Open - Buenos Aires Australian Open - Melbourne Zadar Challenger Plava Laguna Croatia Open - Umag National Bank Open - Toronto Tiriac Open - Bucharest Banja Luka Challenger French Open - Paris Hamburg Open - Hamburg Boss Open - Stuttgart Mallorca Championships - Mallorca Wimbledon - London Nordea Open - Bastad Cincinnati Open - Cincinnati Japan Open Tennis Championships - Tokyo Hangzhou Open - Hangzhou Shanghai Rolex Masters - Shanghai Rolex Paris Masters - Paris Erste Bank Open - Vienna Hellenic Championship - Athens European Open - Brussels Brazil F22 Brazil F24 Bosnia & Herzegovina F2 Croatia F8 Bosnia/Herzegovina F6 Brazil F25 Brazil F26 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 Brazil F15 Brazil F16 Brazil F17 Brazil F29 Croatia F7 Brazil F30 Croatia F8 Brazil F31 Brazil F33 Brazil F34 Brazil F3 Brazil F4 Brazil F5 Israel F3 Croatia F1 Croatia F2 Brazil F9 Italy F6 Italy F7 Brazil F12 Brazil F13 Bosnia & Herzegovina F2 Brazil F14 Bosnia & Herzegovina F3 Brazil F15 Bosnia & Herzegovina F5 Argentina F7 Serbia F1 Argentina F8 Serbia F2 Argentina F9 Serbia F3 Brazil F25 Brazil F26 Serbia F7 Colombia F4 Croatia F7 Colombia F5 Croatia F8 Croatia F9 Croatia F10 Brazil F33 Croatia F12 Croatia F13 Brazil F36 Croatia F14 Brazil F38 Brazil F39 Turkey F32 Turkey F33 Turkey F3 Turkey F4 Croatia F1 Italy F1 Italy F2 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Brazil F10 Brazil F11 Bosnia & Herzegovina F5 Italy F20 Brazil F23 Brazil F27 Croatia F12 Turkey F2 Croatia F1 Croatia F2 Italy F1 Bulgaria F1 Romania F3 Bosnia & Herzegovina F4 Serbia F3 Croatia F12 Brazil F8 Croatia F11 Brazil F30 Italy F5 Italy F7 (Santa Margherita Di Pula) Italy F9 (Santa Margherita Di Pula) Italy F15 (Reggio Emilia) Spain F16 (Huelva) Prague Challenger Open de Nice Cote d'Azur - Nice M25 Irpin M25 La Marsa M25+H Plaisir M25+H Lajeado Aberto de Santa Catarina de Tenis - Florianopolis BH Indoor Sarajevo - Sarajevo Cyclus Open de Tenis - Florianopolis Sarajevo Challenger Florionapolis Challenger Blunmenau Challenger Curitiba Challenger Campos do Jordao Challenger Brasilia Challenger Salvador Challenger Montevideo Challenger Buenos Aires Challenger Sao Paulo Challenger Salinas Challenger Santiago Challenger Recife Challenger Campos do Jordao Challenger Campinas Challenger Recife Challenger Sao Leopoldo Challenger Sao Paulo Challenger Bucaramanga Challenger Florianopolis Challenger Santiago Challenger Sarajevo Challenger Barranquilla Challenger San Luis Potosi Challenger Blumenau Challenger Santos Challenger Sao Paulo Challenger Rio Quente Challenger Kosice Challenger Milan Challenger Arad Challenger Timisoara Challenger Poznan Challenger Orbetello Challenger San Marino Challenger Cordenons Challenger Como Challenger Brasov Challenger Cali Challenger Banja Luka Challenger Trnava Challenger Campinas Challenger Lermontov Challenger Belem Challenger Rio De Janeiro Challenger Porto Alegre Challenger Montevideo Challenger Sao Leopoldo Challenger Sao Paulo Challenger Bucaramanga Challenger Cherbourg Challenger Salinas Challenger Sarajevo Challenger Pereira Challenger Santiago Challenger Itajai Challenger Santos Challenger Sao Paulo Challenger Ostrava Challenger Rio Quente Challenger Rome Challenger Prostejov Challenger Arad Challenger Kosice Challenger Poznan Challenger Sao Paulo Challenger Liberec Challenger Rio De Janeiro Challenger Kazan Challenger Alphen Challenger St. Remy Challenger Banja Luka Challenger Trnava Challenger Campinas Challenger Porto Alegre Challenger Sao Paulo Challenger Sao Jose Do Rio Preto Challenger Buenos Aires Challenger Montevideo Challenger Casablanca Challenger Bogota Challenger Bratislava Challenger Sao Paulo Challenger Tour Finals Sao Paulo Challenger Bucaramanga Challenger Bergamo Challenger Irving Challenger Panama City Challenger Mersin Challenger Ostrava Challenger Samarkand Challenger Arad Challenger Furth Challenger Caltanissetta Challenger Kosice Challenger Mohammedia Challenger Padova Challenger Braunschweig Challenger Todi Challenger San Benedetto Challenger Poznan Challenger Tampere Challenger Cortina Challenger San Marino Challenger Cordenons Challenger Genova Challenger Medellin Challenger Meknes Challenger Campinas Challenger Kenitra Challenger Porto Alegre Challenger Cali Challenger Tashkent Challenger San Juan Challenger Cordoba Challenger Geneva Challenger Bratislava Challenger Guayaquil Challenger Helsinki Challenger Sao Paulo Challenger Tour Finals Andria Challenger Noumea Challenger Bucaramanga Challenger Santo Domingo Challenger Morelos Challenger Santiago Challenger Irving Challenger San Luis Potosi Challenger Sarasota Challenger Mersin Challenger Santos Challenger Sao Paulo Challenger Heilbronn Challenger Samarkand Challenger Vicenza Challenger Mestre Challenger Caltanissetta Challenger Moscow Challenger Blois Challenger Braunschweig Challenger San Benedetto Challenger Binghamton Challenger Lexington Challenger Aptos Challenger Alphen Challenger Kenitra Challenger Campinas Challenger Pereira Challenger Medellin Challenger Mohammedia Challenger Casablanca Challenger Santiago Challenger Lima Challenger Guayaquil Challenger Buenos Aires Challenger Montevideo Challenger ATP Challenger Tour Finals Mendoza Challenger Buenos Aires Challenger Rio De Janeiro Challenger Bucaramanga Challenger Santiago Challenger Guadalajara Challenger Sarasota Challenger Sao Paulo Challenger Vicenza Challenger Prostejov Challenger Furth Challenger Caltanissetta Challenger Blois Challenger Binghamton Challenger Lexington Challenger Granby Challenger Gatineau Challenger Alphen Challenger Columbus Challenger Tiburon Challenger Stockton Challenger Mohammedia Challenger Monterrey Challenger Casablanca Challenger Las Vegas Challenger Lima Challenger Guayaquil Challenger Noumea Challenger Santiago Challenger Buenos Aires Challenger Barletta Challenger Francavilla Challenger Lisbon Challenger Todi Challenger Blois Challenger Milan Challenger Poznan Challenger Cortina Challenger Liberec Challenger Floridablanca Challenger Santo Domingo Challenger Quito Challenger Campinas Challenger Buenos Aires Challenger Cali Challenger Lima Challenger Montevideo Challenger Santiago Challenger Rio De Janeiro Challenger Newport Beach Challenger Mexico City Challenger Sarasota Challenger Tallahassee Challenger Savannah Challenger Vicenza Challenger Shymkent Challenger Almaty Challenger L'Aquila Challenger Liberec Challenger Pullach Challenger Cordenons Challenger Campinas Challenger Lima Challenger Guayaquil Challenger Buenos Aires Challenger Noumea Challenger Burnie Challenger Launceston Challenger Yokohama Challenger Zhuhai Challenger Shenzhen Challenger Zhangjiagang Challenger Sarasota Challenger Tallahassee Challenger Savannah Challenger Aix En Provence Challenger Samarkand Challenger Parma Challenger Milan Challenger Ludwigshafen Challenger Perugia Challenger Amersfoort Challenger Tampere Challenger Aptos Challenger Vancouver Challenger Cordenons Challenger L'Aquila Challenger New Haven Challenger Banja Luka Challenger Buenos Aires Challenger Campinas Challenger Santo Domingo Challenger Lima Challenger Guayaquil Challenger Bratislava Challenger Montevideo Challenger Ortisei Challenger Bendigo Challenger Punta Del Este Challenger Cleveland Challenger Morelos Challenger Columbus Challenger Monterrey Challenger Forli Challenger Split Challenger Barcelona Challenger Lisbon Challenger Cary Challenger Campinas Challenger Concepcion Challenger Marbella Challenger Belgrade Challenger Rome 2 Challenger Zagreb Challenger Oeiras 3 Challenger Nottingham 1 Challenger Nottingham 2 Challenger Salzburg-Anif Challenger Trieste Challenger Meerbusch Challenger Tulln Challenger Sibiu Challenger Barcelona Challenger Bergamo Challenger Bratislava Challenger Helsinki Challenger Florianopolis Challenger Rio De Janeiro Challenger Bendigo Challenger Quimper Challenger Forli 5 Challenger Lille Challenger Lugano Challenger Mauthausen Challenger Zug Challenger Cordenons Challenger Meerbusch Challenger Santo Domingo Challenger Banja Luka Challenger Como Challenger Sibiu Challenger Orleans Challenger Yokohama Challenger Matsuyama Challenger Kobe Challenger Noumea Challenger Vilnius Challenger Antalya Challenger Szekesfehervar Challenger Zadar Challenger Ostrava Challenger Prague 2 Challenger Tunis Challenger Heilbronn Challenger Bratislava 1 Challenger Poznan Challenger Montevideo Challenger Istanbul Challenger Salzburg Challenger PBZ Zagreb Indoors - Zagreb Brasil Open - Costa do Sauipe Brasil Open - Sao Paulo Studena Croatia Open - Umag VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Mercedes Cup - Stuttgart Credit Agricole Suisse Open - Gstaad If Stockholm Open - Stockholm Brisbane International - Brisbane Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Open 13 - Marseille Brasil Open - Sao Paulo BRD Nastase Tiriac Trophy - Bucharest Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Aircel Chennai Open - Chennai Ecuador Open - Quito PBZ Zagreb Indoors - Zagreb Brasil Open - Sao Paulo Rio Open - Rio de Janeiro Argentina Open - Buenos Aires Grand Prix Hassan II - Casablanca US Men's Clay Court Championship - Houston TEB BNP Paribas Istanbul Open - Istanbul Geneva Open - Geneva Vegeta Croatia Open - Umag Bet-at-home Open - Hamburg Citi Open - Washington Winston-Salem Open - Winston-Salem Qatar ExxonMobil Open - Doha Apia International - Sydney Garanti Koza Sofia Open - Sofia Memphis Open - Memphis Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Brasil Open - Sao Paulo US Men's Clay Court Championship - Houston BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem Moselle Open - Metz Kremlin Cup - Moscow Erste Bank Open - Vienna Aircel Chennai Open - Chennai Ecuador Open - Quito Garanti Koza Sofia Open - Sofia Memphis Open - Memphis Rio Open - Rio de Janeiro Delray Beach Open - Delray Beach Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul Open Parc - Lyon Konzum Croatia Open - Umag Bet-at-home Open - Hamburg Abierto Mexicano - Los Cabos Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen China Open - Beijing Kremlin Cup - Moscow Erste Bank Open - Vienna Brisbane International - Brisbane Sydney International - Sydney Open Sud de France - Montpellier Ecuador Open - Quito ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Gazprom Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul AEGON Championships - London Antalya Cup - Antalya Plava Laguna Croatia Open - Umag German Tennis Championships - Hamburg Abierto Mexicano - Los Cabos St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Geneva Open - Geneva Open Parc - Lyon Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Abierto Mexicano de Tenis Mifel - Los Cabos Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Zhuhai Open - Zhuhai China Open - Beijing Kremlin Cup - Moscow Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier New York Open - New York Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco bett1HULKS Championships - Cologne Astana Open - Nur-Sultan Cordoba Open - Cordoba Open Sud de France - Montpellier Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Hamburg European Open - Hamburg Plava Laguna Croatia Open - Umag St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Anytech365 Andalucia Open - Marbella Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Grand Prix Hassan II - Marrakech Serbia Open - Belgrade BMW Open - Munich Stockholm Open - Stockholm Firenze Open - Florence Qatar ExxonMobil Open - Doha Millennium Estoril Open - Estoril Banja Luka Open - Banja Luka BNP Paribas Open - Indian Wells Sony Open Tennis - Miami BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Internazionali BNL d'Italia - Rome Western & Southern Open - New York Miami Open - Miami Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, Group I, 2R, ECU-BRA 1-3 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, Group I, 1R, BIH-POL 5-0 Davis Cup, Group I, 2R, BIH-NED 1-3 Davis Cup, World Group, PO, JPN-BRA 3-1 Davis Cup, Group I, 2R, SVK-BIH 2-3 Davis Cup, Group I, 2R, COL-BRA 3-2 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, World Group, PO, SWE-BIH 3-1 French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments Miami Open - Miami U.S. Open - New York Olympics - Rio de Janeiro Davis Cup, Group I, 1R, BIH-GER 0-4 Davis Cup, Group I, 1R, ECU-BIH 3-2 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Group I, PO, UZB-BIH 1-3